package com.web.kdl.service.excel;

import com.web.kdl.common.result.CommonResult;
import com.web.kdl.entity.historyEvent.HistoryEvent;
import com.web.kdl.entity.maDataReport.DataReport;
import com.web.kdl.pojo.form.DataReportForm;
import com.web.kdl.pojo.form.ExcelForm;
import com.web.kdl.pojo.form.HistoryEventForm;
import org.springframework.scheduling.annotation.Async;

import java.util.List;
import java.util.Map;

/**
 * @Author： shulibin
 * @Date： 2025/8/25 14:36
 * @Describe：
 */
public interface ExcelService {
    void exportHistoryEventExcel(List<HistoryEvent> historyEvent, ExcelForm Form);

    void exportDataReportExcel(List<DataReport> dataReport, ExcelForm Form);
    
    /**
     * 异步导出数据报表（带任务ID）
     */
    void exportDataReportExcelAsync(String taskId, String tempTable, String minuteTable, DataReportForm Form);

    /**
     * 异步导出历史事件（带任务ID）
     * @param taskId
     * @param statusTable
     * @param Form
     */
    void exportHistoryEventExcelAsync(String taskId, List<String> statusTable, ExcelForm Form);


    /**
     * 查询导出任务状态
     */
    CommonResult queryExportTask(String taskId);
}
